read "calc_arbre.mpl";
read "eval_rapide.mpl";
read "sommes_fractions.mpl";

interpol_rapide := proc(a::list, b::list)
local A_prime, P, d, c, R, n, abr, i;	n := nops(a);	  P := mul(x-a[i], i = 1..n);	A_prime := diff(P, x);	abr := calc_arbre(a);	d := eval_rapide2(A_prime, a, abr);	c := seq(b[i]/d[i], i=1..n);	R := sommes_fractions(a, [c], n);
	return R*P;
end proc;
